vzdelanifandomcom-20200214-history
X36PRM Projektování mikropočítačových systémů
Předmět X36PRM přednáší ing. Skrbek. Zkouškové otázky Co je to čítač s automat. přednastavením? klasický čítač, který však při přetečení zapíše hodnotu v registru pro přednastavení a čítá od této hodnoty Jaké funkce poskytují řadiče LED displejů? * Nastaveni jasu Proč jsou signály SCL,SDA u I2C realizovány jako otevř.kolektor? k jakému účelu je to užito? K cemu se pouzije (HOLD, ACK)? viz. I2C otevřený kolektor * HOLD se vysílá, pokud slave neni připraven poslat data (například jsou postupně dodávány procesorem) a potřebuje zapauzovat komunikaci (master ovládá SCL), tak přidrží SCL na low úrovni dokud není připraven * ACK vysílá ten, kdo přijímá -- tedy i master -- potrzuje přijímaná data která vysílá slave Kdo urcuje adresy na sbernici I2C, jak se resi konflikty pri soucasnem vysilani vice zdroju Adresy periferních zařízení připojených k I2C natvrdo stanovuje výrobce. U obvodů, kde se předpokládá vícenásobný výskyt v jednom zapojění (např. EEPROM) specifikuje výrobce jenom část adresy a zbytek volí uživatel konkrétním zapojením pinů v obvodu. Adresou se vždy myslí adresa cílového obvodu (slave). Nižší adresa má vyšší prioritu. Master vždy kontroluje stav sběrnice. Pokud zjistí neshodu mezi vysílanými a přijímanými daty během arbitrace přestane okamžitě vysílat a odstoupí od sběrnice. Potvrzení ACK vždy generuje přijímající strana Pozor nemusí to být vždy slave. Několik adres je na I2C vyhraženo pro speciální účely. Např adresa 0000000 je určena pro vysílání „broadcast“, adresy 0000011, 00001XX a 11111XX jsou rezervovány pro další účely. Adresa 11110aa indikuje 10bitové adresování: aa zde označuje dva nejvyšší bity adresy stanice, zbývajících 8 bitů je vysíláno v následujícím bytu. Pro arbitraci se na I2C používá metoda s detekcí kolize. Každá ze stanic může zahájit vysílání, je-li předtím sběrnice v klidovém stavu. Během vysílání musí neustále porovnávat vysílané bity se skutečným stavem SDA. Je-li zjištěn rozdíl mezi očekávaným a skutečným stavem linky SDA, je to indikace kolize mezi několika stanicemi. Vzhledem k charakteru sběrnice (otevřené kolektory) může k této situaci dojít, pokud určitá stanice vysílá úroveň H, zatímco jiná stanice vysílá úroveň L. Stanice, která na lince zjistí úroveň L zatímco sama vysílá H musí vysílání okamžitě ukončit: Arbitrace na I2C. Master1 ztrácí právo na sběrnici. Obr.: Arbitrace na I2C. Master1 ztrácí právo na sběrnici. K arbitraci většinou dochází během vyslání několika prvních bitů, kdy je vysílána adresa přijímací stanice. Pokud by se např. dvě stanice současně pokusily o zápis do stejného obvodu, nastane kolize až při přenosu vlastních zapisovaných dat. V krajním případě, kdy několik stanic současně zapisuje stejná data na stejnou adresu, nemusí být kolize vůbec detekována. Proc je otevreny kolektor u I2C (dominantni recesivni uroven)? Protože je to sběrnice, multimaster a může začít vysílat více zdrojů a pak vítězí ten, co má nejvíce „0“ na začátku. Každý vysílač musí sledovat při vysílání i stav sběrnice, pokud se liší od toho, co vysílá, tak odstoupí od vysílání. * Dominantní úroveň je „0“ * Recesivní úroveň je „1“ Jaké funkce poskytují dohlížecí obvody pro napájecí napětí? * Generování signálu RESET v případě poklesu Vcc pod limitní úroveň * Inicializace mikropočítače při náběhu Vcc * Rychlé přepnutí na záložní zdroj * Řízení (blokování) signálu \overline{CS} zálohované paměti (aby mikrořadič do ní nezapisoval) * Monitorování stavu baterie * Nastavitelná doba resetu, pozitivní/negativní reset Co je to watchdog, jakym zpusobem se zacleni do programu? * Volně běžící čítač * Při přetečení způsobí reset * Nuluje se programově, tak aby nikdy nepřetekl * Může být interní nebo externí * Interní watchdog je nulován speciální instrukcí nebo sekvencí zápisu do registrů * Interní watchdog se po zapnutí již nedá vypnout * Externí watchdog se nuluje signálem na portu * Externí reset pozitivní i negativní Uveďte příklad 8,16 a 32bitového mikrokontroléru nebo embedded procesoru. Jak vypadá mikropočitač, jaká to je architektura, přiklady. Jaké jsou typy pamětí. Většina malých mikrokontrolerů má harvardskou architekturu, takže je oddělena paměť dat a paměť s programem. Procesory pro vestavné aplikace mají klasickou von neummanovskou architekturu. Další rozdělení podle vnitřní architekruty: zásobníková, střadačová, CISC/RISC, proudové zpracování instrukcí, obvody a registry pro DSP aplikace. 4-bitové mikropočítače * MARC 4-bit RISC (ATMEL), uplatnění v automobilovém průmyslu * Extrémně nízká spotřeba (<1 mA) * Až 8kB Flash Memory * 256x4 RAM * chleba 8-bitové mikropočítače * MCS51 (Intel), 8051, 8052. * M68HC05, M68HC11 (Motorola) * AVR (Atmel) * PIC16F… (Microchip) * ST52 (SGS Thompson) 16-bitové mikropočítače * MCS251 (Intel) * MCS96, MCS296 (Intel) * M68HC12, M68HC16 (Motorola) * MSP430 (Texas Instruments) 32-bitové embedded procesory * ARM91 (Atmel) * Strong ARM, XScale (PXA) * DragonBall 68xx328 (Morotola) * M68K ColdFire * I960 (Intel) * Embedded I386, I486, Pentium III, Pentium 4, Xeon Jaké vstupy (kromě vlastního analogového) mohou mít A/D převodníky a k jakému účelu slouží? * Dolní a horní referenční napětí -- rozsah, ve kterém bude A/D převádět * AVcc, AGND - Napajeni analogoveho prevodniku (zlepseni SNR) * Konfiguracni registry A/D převodníku - výběr kanálu pro převod * Řídící registry A/D převodníku - Začátek a konec převodu, .. A/D, D/A prevodniky D/A převodníky slouží pro převod čísla na analogovou veličinu: napětí nebo proud. Jsou interní nebo externí. Interní jsou v podobě PWM modulátoru. Interface paralelní (BUS) nebo seriový (I2C, Microwire, SPI) A/D převodníky slouží pro převod analogové veličiny na číslo, zpravidla napětí. Na vstupu je obvod Track&Hold nebo Sample&Hold, ten slouží k podržení napětí dokud neskončí převod. Mají analogový multiplexer na vstupu. Počet bitů: 8, 10, 12 rozlišuje s jakou přesností bude převodník snímat rozsah napětí, např 8 bitů 256 hodnot. Pracují většinou jako aproximační. Interní nebo externí (paralelní nebo sériový) Co je obvod Sample & Hold a kde se používá? Obvod Sample & Hold "přidržuje" napěťovou úroveň signálu pro zpracování A/D převodníkem. Hodnota je snímána rychlostí vzorkovacího kmitočtu a měla by být neměná po dobu, kdy A/D převodník zjišťuje hodnotu napětí. Popište funkci dynamického LED displeje U dynamických displejů se využívá setrvačnosti lidského oka, takže čísla nejsou na LEDkách zobrazena trvale, ale rychle se střídají. Hlavním důvodem je ušetřit na řídících signálech. Většinou tedy stačí 4 vývody z procesoru pro řízení hodnoty na vstupu dekodéru (4 bitové čislo na 7 bitů vstup segmenu) a několik vývodů, které řídí rozsvěcení určitých segmentů frekvencí okolo 10 kHz (zapojení se může lišit podle typu segmentů – společná katoda, společná anoda). Proc nejsou v radach(radicich) displeju LED nutne seriove rezistory? * Protože řadiče LED displejů mají jako budič segmentu zdroj proudu. ** Řadice maji take pin na regulaci jasu (velikosti proudu) Jake vyhody ma LCD displej? Nízká spotřeba (pokud mají podsvícení mají vyšší spotřebu). Mohou být reflexivní nebo transmisivní. Je nezbytný řadič, ale některé typy mikropočítačů mají LCD řadič integrován přímo na čipu. Co určuje model při programování v C pro mikropočítač? Model určuje do jakých adresových prostorů budou implicitně mapovány proměnné, jak a kde bude realizován zásobník, jak se budou předávat parametry podprogramům. Pokud model nepodporuje reentrantní volání podprogramů není možné používat rekurzi. Nereentrantní modely jsou rychlejší a úspornější na délku kódu. Parametry podprogramům jsou předávány v registrech. Nakreslete strukturu budiče CAN sběrnice; vysvětlete, jak je generována recesivní/dominantní úroveň Co je dominantni a recesivni uroven? Jak probíhá arbitráž u CAN? Zde mu bylo jedno zda jste nakreslili jednodrátové či 2drátové zapojení CAN. Ktera ze zprav vyslanych soucasne na sbernici CAN bude dodana? 11101100111 11101000111 (tato, nula je dominantni uroven) Vyjmenujte typicke periferni obvody mikropocitace * A/D, D/A * LCD displeje * tlačítka, klávesnice, diody :-) * USB, Bluetooth, IrDA moduly * EEPROM (PCF8594C-2 -- 512x8 (I2C)) * RAM (PCF8570 -- 256x8 (I2C)) * CMOS EEPROM (PCF8594 512x8 (I2C)) * 8b IO, 256x8 EEPROM (PCA9501 (I2C)) * Rozšiřující porty (PCA9555 -- 16b IO port (I2C)) * A/D, D/A (PCF8591 (I2C)) * budiče LED (PCA9552 (I2C)) Rychle vstupy a výstupy – schéma a princip. * Rychlé vstupy: časovač a při změně úrovně na pinu se do FIFO uloží hodnota čítače a stavu pinu, pak se vyvolá přerušení **(je dobré hodnoty z FIFO odebírat rychleji než se zaplní) * Rychlé výstupy: časovač a asociativní paměť -- klíčem je hodnota časovače, hodnotou je, co se má s daným pinem stát ** je také volitelné danou položku z asociativní paměti vyhodit, když se na ní dostane řada Nakreslit typickou strukturu konfigurovatelného vstupu/výstupu (jiný než otevř.kolektor). Jakým způsobem se vybírá mezi vstupem a výstupem? To je takový obrázek se dvěma BKO-D (jeden je pro volbu směru(vstup/výstup) a 2. je datový) a jimi se řídí gaty(báze) tranzistorů, tak aby byl výstup ve stavu vysoké impedance (konfigurace jako vstup) nebo jako je hodnota datového BKO-D (konfigurace jako výstup). Nakreslit schéma Konfigurovatelého vstupu a výstupu – otevřený kolektor Tak zde stačí jen 1 BKO-D, který spíná/vypíná výstupní tranzistor, pokud je požadována konfigurace vstupu, musí se na výstup zapsat "1" (tranzistor je pripojen k invertovanemu vystupu BKO-D) takze je zavřen a při čtení záleží na hodnotě pinu (8051 to tak ma). Java microedition – rozdeleni podle typu, jake ma konfigurace Pro používání Javy je nutná existence JVM (Java Virtual Machine) pro cílovou plaformu. Java Micro Edition -– optimalizováno pro vestavěné systémy: * CDC (Connected Device Configuration). Embedded systémy poskytující síťové služby, PDA, … mikropočítač 32-bit, 2MB RAM, 2MB ROM * CLDC (Connected Limitted Device Configuration) mobilní telefony, PDA, … mikropočítač 16-bit/16MHz, KVM - 70kB code * Java Card mikropočítač 8/16-bit, 1,2kB RAM, 16k EEPROM, 32k ROM Co umeji powerfail obvody? Jake funkce muze sdruzovat PowerFail obvod? viz. dohlížecí obvody Typy PWM Soubor:Typy_pwm.png Vyjmenujte alejspon 3 typy velkokapacitnich pametovych medii a uvedte typ rozhrani (paralel, serial, SPI, ...) * PCMCIA Flash Card -- Interface paralelní 16bitů * Compact Flash (CF) -- Interface paralelní 16 bitů. Implementuje rozhraní disku (ATA). Obvykle dva režimy činnosti: má přímo signály ATA jako na disku nebo PCMCIA. O režimu se rozhoduje při zasunutí karty .Mechanickým adaptérem (bez IO) lze převést na PCMCIA. * Multi Media Cards (MMC) -- Seriový (např. SPI). Určeno pro MP3 přehrávače, PDA, … Konektor – 7 kontaktních plošek. Sériová synchronní komunikace (SCLK 0-20MHz). Dva protokoly; MultiMediaCard, SPI. Karty je možno zapojovat do sběrnice. Datové přenosy zabezpečené CRC. * Secure Digital Cards (SD) * SSFDC (SmartMedia) -- Tvar karty – malá disketa (asi 30 x 30 x 2 mm). Paralelní 8 bitový interface. Jednoduchá obsluha. Paměťové čipy mají architekturu přizpůsobenou požadavkům file-systému. Data jsou uložena na kartě ve specifickém formátu. In–circuit programming (ISP) Dovoluje programovat mikropočítače zapojené přímo v cílové aplikaci, usnadňuje ladění a testování programů (pouze snadnou výměnou programu), dovoluje snadnou výměnu firmwaru v servisním středisku, u zákazníka nebo přímo zákazníkem, přenos dat sériově přes různá rozhraní (SPI rozhraní, UART, JTAG,...). Kdy mohu použít logický analyzátor, jaké jsou rozdíly mezi zdrojovým kódem a kódem odchycenym logickym analyzátorem? Mohu jej pouzit tehdy, pokud je vyvedea ven z mikra adresova a datova sbernice. Logický analyzátor slouží pro zobrazení signálů na vnějších sběrnicích mikropočítače. Kromě napěťových úrovní v daném čase může být schopen i symbolické vyjádření instrukcí pokud logický analyzátor podporuje instrukční soubor sledovaného mikropočítače. Kód zachycený analyzátorem se bude od zdrojového kódu lišit v případě cyklů a v případě větvení. Intrukce uvnitř cyklů jsou zobrazeny tolikrát kolikrát cyklus proběhl. V případě rozhodovacích funkcí je zobrazena jenom ta větev programu, která byla provedena. Co je to analogovy multiplexer, jak je rizen? Analogový multiplexer je určený pro připojení více vstupních analogových napěťových signálů. Výhodný je v těch případech, u kterých nevyžadujeme rychlé zpracování hodnot. Pomocí digitálních vstupů se přepínají jednotlivé analogové vstupy na jediný analogový výstup Q, který je poté přiveden na analogový vstup (např. Sample&Hold obvodu). Jak se meri kmitocet v mikropocitaci s citacovou architekturou Nakonfiguruje se časovač na pevný časový interval (tak aby se to pozdeji dobre zpracovavalo), dale se nakonfiguruje čítač, který se inkrementuje vnějšími událostmi (tim měřeným signálem). Při přetečení časovače se přečte hodnota čítače. A je to. K cemu slouzi paritni bit u viceprocesorove komunikace (urceni, zda jde o adresu nebo data) Pokud ja paritní bit "1" přenášený Byte je adresa cíle (procesoru), jinak data. * např. UART u 8051 lze nastavit tak, ze vyvolava přerušení jen pokud je tento parit. bita nastaven, pak si porovná adresy, pokud se rovnají, změní nastavení UART na generovaní přerušení pro každý Byte dat až do konce přenosu, a pak se opet nastavi přeruření až při paritním bitu rovnemu "1" Kolik portu potrebujete na pripojeni 64 tlacitkove klavesnice, nakreslete zapojeni No asi nejlepší bude 16 pinu (8 na řádek a 8 na sloupec -- klávesnice 8x8=64) sloupce se postupně připínají na "0" a čtou se hodnoty (všech) řádků -- samozrejmě dostaneme stav jen sepnutého sloupce. Protější konec vodičů připojených ke vstupům je připojen na Vcc přes asi 10K odpory (možno vynechat pokud mikropočítač má pull-up R). K výstupům se připojují vodiče přes diody (katoda k pinu samozřejmě)(tyto diody lze vynechat pokud jsou výstupy s otevřeným kolektorem). K cemu slouzi komparacni a zachytny registr? * Záchytný (Capture) registr při spuštěném čítači/časovači se jeho hodnota uloží při události na některém pinu (samozřejmě se musí nakofigurovat) a vyvolá se přerušení. Výhoda je v tom, že nedochází k prodlevě mezi vyvoláním přerušení a přečtení hodnoty čítače/časovače. * Komparační (Compare) registr Hodnota čítače/časovače je porovnávána s registrem (nutno nastavit) a při rovnosti je vyvoláno přerušení a změna na přiřazeném pinu. Takto lze generovat pulzy dané šířky. K čemu slouží obvodový emulátor? Emulátory slouží k náhradě části digitální logiky zejména pro snadnější ladění. Emulátor EPROM -- Dovoluje rychlou změnu kódu. Paměť EPROM je nahrazena pamětí RAM. Operace čtení ze strany mikropočítačové aplikace. Operace zápisu ze strany PC. Možno použít jen pokud mikropočítač čte instrukce z vnější paměti programu. Emulátor mikropočítače -- Dovoluje rychlou změnu kódu. Mikropočítač je nahrazen speciálním obvodem (emulační čip). Kompatibilita s emulovaným mikropočítačem ze strany aplikace. Speciální interface ze strany PC (RAM místo paměti programu, speciální interface pro čtení obsahu registrů). Možno použít jen pokud je mikropočítač v patici. Schematicky znazornete propojeni jednoho masteru a dvou slave na sbernici SPI Jde o to, ze mají společný vodič pro SCLK(hodiny), MOSI(master out slave in), MISO(master in slave out), ale od mastera vede ke každému odvodu slave speciálně vodič SS (slave select) Co je to recesivni a dominantní úroveň signálu? Sběrnice CAN je realizována jedinou datovou linkou, na které se rozlišují dvě logické hodnoty: tzv. dominantní úroveň (d') a recesivní úroveň ('r). Vztah mezi dominantní a recesivní úrovní je následující: je-li na sběrnici připojeno několik stanic a alespoň jedna z nich vysílá úroveň d''' zatímco ostatní vysílají úroveň '''r, je na sběrnici úroveň d'''. Vysílají-li všechny stanice úroveň '''r, je na sběrnici úroveň r'''. Sběrnice s výše popsanými úrovněmi by mohla být realizována například vodičem, který je buzen budiči s otevřeným kolektorem a přes rezistor připojen na kladné napájecí napětí. Vysoká napěťová úroveň by potom odpovídala úrovni '''r a nízká napěťová úroveň by odpovídala úrovni d'''. V praxi se však pro realizaci sběrnice CAN systém s otevřenými kolektory nepoužívá. Popsané vlastnosti dominantní a recesivní úrovně jsou potřebné pro arbitrační mechanismus, kterým je řešen přístup na sběrnici CAN a dále tím, že se pro CAN mohou použít spoje s různými elektrickými vlastnostmi Zapojení I/O brany s 3stavovym vystupem Rozdíl mezi controllerem a embeded procesorem, co naměříme na pouzdru procesoru a controlleru. * '''Embedded procesor mikroprocesor pro vestavěné systémy -- nízká spotřeba, upravnený teplotní rozsah, mají vyvedeny adresovou, datovou sběrnici * Controller jednočipový mikropočítač (např. 8051), mají v sobě paměť a obvody vstupu výstupu (UART, ...), mají vyvedeny vstupně výstupní brány (porty) ** rozšiřitelné vnější sběrnicí -- často dříve ** uzavřené -- pouze vstupy/výstupy Sériové sběrnice SPI,Microwire a I2C Serial Peripheral Interface SPI (Serial Peripheral Interface) slouži pro propojení dvou nebo více zařízení. Obvykle je jeden MASTER a ostatní SLAVE. Datový výstup MASTERu MOSI (Master Out, Slave In) je připojen na vstupy SLAVE, obráceně MISO (Master In, Slave Out), výstup hodinového signálu SCK (až 2 MHz) řídí MASTER. Každý SLAVE je řízen signálem #SS Slave Select, pokud není aktivní jsou I/O obvodu ve stavu vysoké impedance. V daný okamžík komunikuje MASTER pouze s jedním SLAVE zařízením. Na vstupu obou jsou posuvné registry a ty jsou řízeny SCK, vygenerování 8 taktů zajistí výměnu obou registrů. Pro nastavení parametrů přenosu, jako kdy dojde k vzorkování dat a kdy k posuvu dat slouží CPOL a CPHA: Soubor:Spi_parametru.png Microwire Podobná sběrnice jako SPI. Signály DO (Data Out), DI (Data In), hodiny SK (max. 1 MHz) a pro výběr obvodu slouuží samostatný signál #CS. Data jsou vzorkována při vzestupně hraně SK a tak se musí zapisovaná data objevit na drátech v dostatečném předstihu. Formát přenášených dat (8, 16 bit, ...) závisí na připojeném obvodu. I2C I2C je typu multimaster, proto řeší i arbitraci pro přístup na sběrnici a má zabudovaný mechanismus adresování jednotlivých připojených stanic nebo integrovaných obvodů. Každá stanice má určenou svou vlastní adresu o délce 7 nebo 10 bitů, která slouží k jejímu výběru i k arbitraci. Jednotlivé stanice rozhraní I2C jsou propojeny jedním datovým vodičem (SDA) a jedním hodinovým vodičem (SCL). Z elektrického hlediska jsou oba vodiče typu otevřený kolektor. V klidovém stavu (volná sběrnice) jsou oba vodiče v úrovni H. Při probíhajícím přenosu jsou na SDA vysílány jednotlivé datové bity přičemž platí pravidlo, že logická úroveň na SDA se smí měnit pouze je-li SCL v úrovni L. Toto pravidlo je porušeno ve dvou speciálních případech -– vysílání podmínek START a STOP, které se používají k zahájení arbitrace a k ukončení přenosu. Soubor:Pripojeni_i2c.png Adresování Každá stanice (v praxi např. každý integrovaný obvod) připojená na I2C má přidělenou 7bitovou adresu. Po zachycení podmínky START porovnávají všechny obvody svou adresu s adresou, která je vysílána na sběrnici. Zjistí-li některý z obvodů shodu, je vysílání určeno právě jemu a musí přijetí adresy potvrdit bitem ACK. Potom přijímá resp. vysílá další data. Arbitrace Pro arbitraci se na I2C používá metoda s detekcí kolize. Každá ze stanic může zahájit vysílání, je-li předtím sběrnice v klidovém stavu. Během vysílání musí neustále porovnávat vysílané bity se skutečným stavem SDA. Je-li zjištěn rozdíl mezi očekávaným a skutečným stavem linky SDA, je to indikace kolize mezi několika stanicemi. K arbitraci většinou dochází během vyslání několika prvních bitů, kdy je vysílána adresa přijímací stanice. Sériová rozhraní SPI, Microwire, I2C a CAN Sériové rozhraní srovnat RS232, RS485, CAN všechny jsou sériové * RS232 -- dvoubodový spoj, nesymetrická (vztažené k 0), do 15 metrů, +/-15V *'RS485' -- sběrnice, symetrická (rozdílový (deferenciální) zesilovač na vstupu), do 1200 metrů (100Kb/s),1,2 metrů (10Mb/s), rozdíl vst. napětí +/-6V (zatížené +/-1,5V) *'CAN' -- sběrnice, symetrická, multimaster, recesivní/dominantní úroveň, priority zpráv, do 1Mb/s, „0“ = 1 až 5V, „1“ = -1 až 0,5V (je i 24V verze) K čemu je 9tý bit u RS232? * jako parita * pro multiprocesorovou komunikaci asi ne, protoze RS232 je dvoubodový spoj. * na přednáškách bylo (tj. nemusí to být přesně), že když je dlouho nahozen do 1, potom zařízení se nahodí do autobaud režimu, kdy se snaží nadetekovat modulační rychlost. HSI/HSO High Speed Inputs/Outputs viz rychlé vstupy/výstupy Programable Counter Array (PCA) Jde o časovač, který je připojen k více Capture/Compare modulum a všichni jsou pripojeny přes OR na jedno přerušení. viz. Capture, compare register Pameti – SRAM, EPROM, EEPROM, Flash, EPROM OTP, SDRAM, Flash Paměti závislé na zdroji napětí (volatilní): * RAM/RWM -- Random Acces Memory / Read Write Memory, paměť s libovolným přístupem čterní/zápis. * SRAM -- Static RAM. Je založena na stavech klopných obvodů, má menší spotřebu než dynamická, používá se v menších kapacitách, je rychlejší než dynamická RAM. * SDRAM -- Synchronous Dynamic Random Access Memory, je řízena hodinovým signálem, který ovládá automat řídící přístup do paměti. Paměťovou buňku tvoří tranzistor a kapacita (parazitní kapacita CMOS tranzistoru), hodnota 0 nebo 1 je rozlišena množstvím náboje v kapacitoru. Kvůli parazitním svodům se náboj samovolně vytrácí a proto je nutné uložená data refreshovat. * PSRAM -- PseudoStatic RAM, dynamiká RAM, která ma vestavěné refrešování a obvody pro adresování, tak aby se co do použití podobala co nejvíc SRAM. Paměti nezávislé na zdroji napětí (nevolatilní): * ROM -- Read Only Memory, paměť pouze pro čtení. * PROM -- Programovatelná ROM, uživatel do ní může jednou zapsat data. * EPROM -- Mazatelná paměť PROM, obvod se vymaže UV zážením. * EEPROM -- Elektricky mazatelná PROM. * EPROM OTP -- Erasable Programmable Read-Only Memory One Time Programmable Sběrnice pro styk s hlavní pamětí: adresová, datová, řícící (Write Enable, Output Enable, ChipSelect), stavová (např. WAIT). Jak funguje 4-vodicovej dotekovej display Jo to pěkná analogařina. Jednoduše si vystačíme s Ohmovým zákonem, jde o odporový dělič napětí a A/D převodník. Jsou to 2 odporové průhledné fólie, které mezi sebou mají distanční výstupky (aby se nedotýkaly). Rezistivní vrstva je rovnoměrná. Dotek = spojení fólií. Jedna fólie je napájena, na 2. fólii je A/D převodník. Víme, že je např. napájení 5V a šířka/délka fólie je např. 5cm, takže připadá 1 \frac{V}{cm} . Pak se připojí 2. fólie na Vcc a na 1. měří. Samozřejmě je nutné aby vstupní odpor A/D byl co největší (např. přes Sledovač signálu). Co je to in-circuit debugger * Program v paměti mikropočítače, který komunikuje přes sériovou linku a vytváří uživatelské rozhraní. Z tohoto rozhraní je možno nahrát program, krokovat program, nastavovat breakpointy, spouštět program, zobrazovat registry, paměť dat apod. * Program v paměti mikra, který podporuje jednoduché příkazy a po sériové lince vrací data. Na sériové lince nevytváří uživatelské rozhraní, ale je ovládán pomocí IDE (viz MPLAB). Typy a rychlosti infra Výhodou použití IrDA pro komunikaci mezi PC a průmyslovými systémy, lékařskými přístroji, apod. je galvanické oddělení obou zařízení varianty *SIR(Serial Infrared), <115200 b/s, nečastější, mobilní telefony, PDA, notebooky, motherboardy *MIR (Middle Infrared), 0.576Mb/s, 1.152Mb/s, PDA, notebooky, motherboardy *FIR (Fast Infrared), 4Mb/s, PDA, notebooky, motheboardy *VFIR (Very Fast Infrared) 16Mb/s, USB IrDA adaptéry, motherboardy, aplikace mobilní telefony, PDA, notebooky 10 bit A/D, zachyceno 512. Vrefh=3V, Vrefl=1V. Jaké bylo napětí na vstupu? Rozlišení jednoho bitu: b = \frac{V_{refh} - V_{refl}}{2^n - 1} = \frac{2}{1023}~\rm{V} \doteq 1,95~\rm{mV} Změřené napětí V_{A/D} = N b + V_{refl} = 512 \frac{2}{1023} + 1,0~\rm{V} = 2,0~\rm{V} Priklad, nevim presne, neco jako jak dlouho cita citac kdyz mu na vstup date nejakej integracni clanek nebo tak neco. Na to jsem jen kouknul a hned vynechal. Ale par lidi to spocitalo, pry to bylo jednoduchy (kdyz se vi jak na to..) No, možná to mohlo být takto: left|thumb|200px|Integrační článek s komparátorem Nastavením P1.7 do "0" dojde k vybití C a při nastavení do "1" k nabíjení a můžeme měřit čas, než dosáhne Uin. U_{in}=V_{cc} \cdot \left( 1-e^{\frac{t}{\tau}} \right) \tau =RC Z toho spočítáme, jakého maximálního času můžeme dosáhnout: t=-\tau \cdot ln\left( \frac{V_{cc}-U_{in}}{V_{cc}}\right) No a pak uz je přece jednoduche změřit pomocí časovače čas a spočítat Uin (hlavne tu exponenciálu). Jen je asi dobre ošetřit případ pro Uin=Vcc -- to bychom se nemuseli dočkat (nebo spíš v \infty ), ale to by dříve došlo k přetečení časovače. Presne tak, doslo by docitani casovace na maximalni hodnotu, tedy to je spravne.